package com.marketfarm.client.service;

import java.util.List;
import java.util.Map;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import com.marketfarm.shared.entity.Item;
import com.marketfarm.shared.entity.Item.TipoItem;
import com.marketfarm.shared.entity.Ordem;
import com.marketfarm.shared.entity.Ordem.TipoOrdem;

@RemoteServiceRelativePath("gerenciadorCompraVendaService")
public interface CompraVendaService extends RemoteService{

	Ordem comprar(String sessao, TipoItem tipoItem, Integer quantidade, Double preco) throws Exception;
	
	Ordem vender(String sessao, TipoItem tipoItem, Integer quantidade, Double preco) throws Exception;
	
	Map<TipoItem, Item> getItens(Long avoidCache) throws Exception;
	
	Map<TipoOrdem, List<Ordem>> getOrdensAtuais(TipoItem tipoItem, Long avoidCache) throws Exception;

	boolean removerOrdem(Ordem ordem) throws Exception;
}
